package srv;

import java.util.ArrayList;
import java.util.List;

import negocio.Area;
import negocio.Carta;
import negocio.Producto;
import negocio.Restaurante;
import negocio.Sector;
import dao.RestauranteDAO;

public class RestauranteSRV 
{
	private static RestauranteDAO restauranteDao;
	static 
	{
		restauranteDao = RestauranteDAO.getInstancia();
	}
	
	public void persistRestaurante(Restaurante restaurante)
	{
		restauranteDao.perisitRestaurante(restaurante);
	}
	
	public Restaurante getRestauranteById(int id)
	{
		return restauranteDao.getRestauranteById(id);
	}

	public Restaurante getRestauranteByNombre(String nombre)
	{
		return restauranteDao.getRestauranteByNombre(nombre);
	}

	public List<Restaurante> getRestaurantes()
	{
		return restauranteDao.getRestaurantes();
	}
	
	public void updateRestaurante(Restaurante restaurante)
	{
		restauranteDao.updateRestaurante(restaurante);
	}

	public void setCapacidadMaxSalon(Restaurante restaurante,
			int capacidadMaxCubiertos) {
		restaurante.getSalon().setCapacidadMaximaCubiertos(capacidadMaxCubiertos);
		updateRestaurante(restaurante);
	}

	public void setSectores(Restaurante restaurante, ArrayList<Sector> sectores) {
		restaurante.getSalon().setSectores(sectores);
		updateRestaurante(restaurante);
	}

	public void agregarProducto(Producto producto) {
		restauranteDao.persistProducto(producto);
	}
	
	public void updateCarta(Carta carta)
	{
		restauranteDao.updateCarta(carta);
	}
	
	public void updateArea(Area area)
	{
		restauranteDao.updateArea(area);
	}

	public Area loadArea(String nombreArea, Restaurante restaurante) {
		return restauranteDao.getArea(nombreArea, restaurante);
	}
}
